diff options
| author | Adam Soltys <[email protected]> | 2023-12-06 13:56:22 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-12-06 13:56:22 -0800 |
| commit | c4e36c6e9b1132d3fc89fbba7fc77848b29a0915 (patch) | |
| tree | bd467de01f47598d61061c83cd675bd1eb22eb57 /src/routes/(app)/[username]/settings | |
| parent | 54f6d24f819816d6d687dab7291e9db334286e52 (diff) | |
| download | coinos-ui-c4e36c6e9b1132d3fc89fbba7fc77848b29a0915.tar.gz coinos-ui-c4e36c6e9b1132d3fc89fbba7fc77848b29a0915.zip | |
email verify
Diffstat (limited to 'src/routes/(app)/[username]/settings')
3 files changed, 22 insertions, 8 deletions
diff --git a/src/routes/(app)/[username]/settings/[...tab]/+page.server.js b/src/routes/(app)/[username]/settings/[...tab]/+page.server.js index 156b6062..2acad2dd 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/+page.server.js +++ b/src/routes/(app)/[username]/settings/[...tab]/+page.server.js @@ -1,9 +1,10 @@ import { fail, redirect } from "@sveltejs/kit"; import { fd, auth, get, post } from "$lib/utils"; -export function load({ params, url }) { +export function load({ cookies, params, url }) { if (url.pathname.endsWith("settings")) throw redirect(307, url.pathname + "/account"); + params.cookies = cookies.getAll(); return params; } diff --git a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte index d0ee7eba..baef4d8e 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/+page.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/+page.svelte @@ -8,7 +8,7 @@ import Spinner from "$comp/Spinner.svelte"; import Pin from "$comp/Pin.svelte"; import { t } from "$lib/translations"; - import { fail, post, sleep, warning, success } from "$lib/utils"; + import { fail, auth, post, sleep, warning, success } from "$lib/utils"; import { avatar, banner, password, pin } from "$lib/store"; import { upload } from "$lib/upload"; import { page } from "$app/stores"; @@ -28,7 +28,7 @@ let submit; let formElement; - let { user, token, rates, tab } = data; + let { user, token, rates, tab, cookies } = data; let prev; $: update(data); @@ -134,13 +134,24 @@ if (user.email !== prev.email) { try { - await post("/api/request", user); - warning("Verification email sent"); - await sleep(4000); - } catch(e) { + cookies.get = function (n) { + return this.find((c) => c.name === n).value; + }; + + user.verified = false; + + await post( + "/api/request", + { id: user.id, email: user.email }, + auth(cookies) + ); + + warning("Verification email sent"); + await sleep(4000); + } catch (e) { console.log(e); } - } + } const response = await fetch(formElement.action, { method: "POST", @@ -188,6 +199,7 @@ {#each tabs.filter((t) => t.name !== "shopify") as { name, key }} <a href={`/${user.username}/settings/${name}`}> <button + type="button" class="hover:opacity-80" class:text-black={tab === name || (tab === "shopify" && name === "pos")} diff --git a/src/routes/(app)/[username]/settings/[...tab]/_pos.svelte b/src/routes/(app)/[username]/settings/[...tab]/_pos.svelte index ed9f1ac4..8193bc9c 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/_pos.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/_pos.svelte @@ -73,6 +73,7 @@ <a href="./shopify"> <button + type="button" class="flex rounded-full border py-2 px-4 font-bold hover:opacity-80 w-full gap-2 my-5 justify-center" > <img src="/icons/shopify.svg" class="w-8" /> |
